The present invention relates to the field of Internet Telephony, and more particularly to telephony and other delay critical flows of application data for transport over the Internet.
Real time transmission of voice over the Internet, also known as Internet telephony, is attracting a great deal of attention as an emerging method of communication. Despite the fact that the Internet does not presently provide a Quality of Service (QoS) guarantee for voice transmission, the use of Internet telephony is expected to increase rapidly over the next several years. Therefore, it would seem that to a large degree, many consumers are amenable to tolerating the reduced voice quality and slight delay associated with Internet telephony (without a QoS guarantee) in exchange for relatively inexpensive long distance voice communications. However, telecommunications carriers would nonetheless desire a means for implementing a QoS guarantee in anticipation of future customer demand for improved quality Internet telephony. Furthermore, a great deal of effort and resources are currently being expended in order to establish QoS guarantees for Internet telephony. For example, various groups within the Internet Engineering Task Force (IETF) are working to establish QoS or QoS-like standards for Internet telephony (including the RSVP, DiffServ, and QoSRouting working groups).
One current method for transporting voice over the Internet is to package voice data at an Internet Telephony Gateway (ITG), for transport over the Internet within an Internet Protocol (IP) packet. IP packets are comprised of an IP payload (that portion of the packet containing the information or data which is to be transported) and an IP header (appended overhead, utilized for, inter alia, forwarding the respective IP packet along IP-based routers from source to destination).
Additionally, there exists added overhead in the protocol stacks appended to and associated with each IP packet. For instance, IP packets carrying voice communication data typically are appended with RTP (Real-Time Protocol) and UDP (User Datagram Protocol) headers within their protocol stacks. Therefore, the data-overhead transport efficiency associated with current methods of voice transport over the Internet is correspondingly low. For example, when RTP and UDP are utilized in the protocol stack associated with a 10-byte voice payload, the corresponding overhead associated with each IP packet is 80% (12 bytes for RTP and 28 bytes for UDP).
Yet other disadvantages exist (in addition to data-overhead transport inefficiency) in conjunction with the utilization of IP forwarding techniques when applied to Internet voice transport. IP-based routers forward (route) IP packets based on each packet""s destination address. Therefore each IP packet header is parsed at a controlling microprocessor in each IP-based router through which a packet is forwarded. The destination address associated with each respective packet is accessed by the microprocessor and a forwarding lookup table is utilized to forward the IP packet to a next router. Despite advances associated with processor speeds, the performance of forwarding algorithms and functions for each IP packet at each IP router utilizes precious router processing capacity and consequently limits the forwarding capacity of the routers.
Recently, scalability has been improved using switched routers in which multiple input ports associated with each router store the forwarding lookup tables and the corresponding forwarding decisions are made when an IP packet arrives at an input port. Thus, a portion of the IP packet processing burden is shifted from the main router microprocessor to additional processors (or hardware) residing at the router input ports; thereby resulting in increased router processing capacity. Switch matrixing is used to convey the IP packet from the input port to an appropriate output port.
Yet another approach for improving the forwarding capacity for an IP router is through the use of label switching. Label switching is efficiently applied to xe2x80x9cconnection-likexe2x80x9d applications for IP packet transport within an MPLS (Multi-Protocol Label Switching) network incorporating Label Switching Routers (LSRs). A Label Switching Router (LSR) is a router operable to forward IP packets conventionally (i.e., via layer three forwarding; comprising the steps of parsing the IP header for each packet, accessing the destination address within the IP header utilizing the router processor, determining the next router within the network to forward an IP packet to, and conveying the IP packet to that next router) and additionally, is operable to perform layer two switching when a label encapsulates an IP packet. Label switching is accomplished by first identifying groupings or segments of IP packets to be sequentially launched from a PCG (Packet Circuit Gateway) or ITG (Internet Telephone Gateway). These groupings or segments are characterized as having IP packets which regularly xe2x80x98flowxe2x80x99 from a source to a destination (e.g., IP packets sharing the same source and destination addresses and/or port identification) for an extended period of time. At the PCG or ITG, the leading edge (first IP packet in a segment which will flow from a source to a destination) is identified and a label is appended to it and each subsequent IP packet corresponding to the same aggregate flow of IP packets (i.e., IP packets belonging to the same grouping or segment). IP packets encapsulated with switching labels are switched at each respective LSR input port (instead of being forwarded by the LSR main processor). A switching path for each labeled IP packet is determined by comparing label path information to a resident lookup table at the input port for each LSR. Each IP packet corresponding to the same aggregate flow has a label codifying the same corresponding network path information. Therefore, each IP packet corresponding to the same aggregate flow segment is switched (mapped) through the same LSRs (i.e., thereby each traversing the same path through the Internet). When a labeled IP packet reaches the point of egress (destination PCG or ITG), each corresponding label is removed and the IP packet (IP header and IP payload) is forwarded to its destination using conventional layer three IP forwarding techniques.
Layer two label switching significantly increases forwarding speed when compared to layer three forwarding. In particular, explicit route selection and QoS based routing are simpler to implement utilizing layer two label switching when compared to conventional layer three IP forwarding. Enablement of the label switching process is dependent upon establishing a label convention prior to use and supplying each LSR and edge device (e.g., PCGs and ITGs) with the appropriate label switching convention (in the form of look-up tables).
Appending a switching label to encapsulate an IP packet, of course, incurs yet additional overhead when compared to conventional IP forwarding. Therefore, while label switching provides significantly increased switching speeds when compared to conventional IP forwarding techniques, the deleterious effects associated with the accompanying data-overhead transport inefficiency (even more overhead occurred with the addition of an appended label) remain. Specifically, the deleterious effects associated with large overheads in a voice transport system are voice delay and jitter. Attempting to increase the data packed into each IP packet would, of course, correspondingly decrease the percentage of overhead utilized per unit of voice data transported. However, the delay/jitter associated with each respective connected call would increase due to data gathering delays.
The present invention is a device and method for packaging voice data, and other delay critical flows of application data, for point-to-point transport from one Packet Circuit Gateway (PCG) to a second PCG over Label Switching Routers (LSRs) within an Internet Protocol (IP) network; the beneficial aspects of the invention including: (i) a reduced overhead requirement when compared to conventional IP telephony due to inclusion of a switching label in lieu of an appended IP header, thereby increasing network bandwidth efficiency, and (ii) the increased transport speed associated with layer two label switching when compared to layer three forwarding. LSRs are devices within the IP network infrastructure which selectively transport data packets utilizing either (i) layer three forwarding if a received IP packet is not encapsulated with a switching label, or (ii) layer two switching if a received IP packet is encapsulated with a switching label.
The present invention is operable to perform its transport function with packet payloads having only an appended switching label (with no IP packet header) since devices along the entire path between the source PCG (including the source PCG) and the destination PCG (including the destination PCG) are operable to utilize layer two label switching. Advantageously, elimination of the need to append an IP header to data transported over the network and the resulting significant gain in the efficiency of transport of short but delay sensitive packets, is ideally suited to voice and other similar traffic sources.
Alternative embodiments of the present invention further decrease required overhead (and thereby increase transmission bandwidth efficiency) by eliminating the need to repeatedly transmit higher layer protocol stacks typically appended to conventional IP packets. For example, the present invention eliminates the need to repeatedly append such illustrative (but not exhaustive) protocol layers as Real-Time Protocol (RTP), User Datagram Protocol (UDP), and Transmission Control Protocol (TCP), each of which may typically be used in conjunction with IP packet transport.
Yet another alternative embodiment of the present invention, advantageous when compared to prior art IP telephony methods, utilizes a voice frame constructed from a plurality of voice packets. Each of the voice packets within the voice frame has a common source and destination (i.e., the same source PCG and same destination PCG). A switching label is assigned and appended to the entire voice frame and therefore, the fixed switching label overhead is utilized for the transport of a plurality of voice packets in lieu of just a single packet. Thus voice data transport efficiency (bandwidth efficiency) is further improved.